package com.book.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.book.model.dto.BookAddDTO;
import com.book.model.dto.BookQueryDTO;
import com.book.model.entity.Books;
import com.baomidou.mybatisplus.extension.service.IService;
import com.book.model.vo.BookQueryMainVO;
import com.book.model.vo.BookVO;

import java.awt.print.Book;
import java.util.List;

/**
 * <p>
 * 书本表 服务类
 * </p>
 *
 * @author auto
 * @since 2025-04-02 06:38:55
 */
public interface BooksService extends IService<Books> {

    BookQueryMainVO getBookListByPage(BookQueryDTO bookQueryDTO);

    List<Books> getBookListByWxParam(String msg);

    List<Books> getBookListNewFile();

    List<Books> getPublishOrPurchase(boolean publish,String userId);

    BookVO getBookById(String id);

    boolean createOrderBook(String bookId,String userId);

    boolean cancelOrderBook(String bookId);

    boolean sendTelNotice(String bookId);

    String userAddBook(BookAddDTO book);

    boolean confirmBook(String bookId);

    Page<Books> publishQuery(BookQueryDTO bookQueryDTO);
    Books reuse(String bookId);
    Books shelve(String bookId,Integer newCondition,Integer points);
}
